home *** CD-ROM | disk | FTP | other *** search
- ********
- * *
- * TODO *
- * *
- ********
-
- Lifetime of result Value Tree, make sure we keep pointers. Exslt
- handling of node set values is especially nasty in this respect,
- lots of potential mem leaks...
-
- Pattern tester:
- -> try to optimize for ID scan and tests.
-
- Pattern scanner:
- -> add error checks on all returns
-
- Sorting:
- -> add lang and case-order
- -> add foreign sorting functions (interfaces ?).
-
- ********
- * *
- * DONE *
- * *
- ********
-
- Design:
- - should transforms for a given stylesheet be thread clean,
- -> the precompilation now occur only at stylesheet processing
- time (except the binding for named templates and extension
- functions which need to be computed once at run-time).
- Multiple threads should be able to reuse the same stylesheet
- now.
-
- Embedding Stylesheets:
- - example in 2.7 would force to validate, we do it by default now
-
- ID and Key support:
- -> Done
-
- Extra functions:
- -> document() should not be a problem since Result Tree Fragments are
- implemented
- => Done
-
- Templates:
- -> check the built-in template rule for attributes
- -> make sure @xxx matches are applied
-
- Contextual error reporting:
- -> provide a couple of functions providing context analysis, not urgent
-
- Validity:
- -> should we add validation by default ? Make this an option
- -> redirrect validity errors
- => done added a special parsing mode
-
- Import:
- -> parse them
- -> provide functions to circulate in the import tree of stylesheets
- -> make sure we use the cascade wherever it's needed
-
- Extra functions:
- -> make a separate module.
- => done functions.[ch]
-
- Support Attribute value templates:
- -> starts to be urgent. Design it in flexible ways but try to optimize
- to handle most of it at the stylesheet parse time ...
- => Done for the most part need to check all attributes in XSLT constructs
- using them and use the dedicated readin function.
- -> optimization by checking their existence at stylesheet parse time.
- => done when building the preproc function
-
- Sorting:
- -> add support for imbricated sorts
- => done but not well tested.
-
- Separate util module:
- -> macros, config, verbosity ?
- => xsltutils.[ch]
-
- Support for disable-output-escaping="yes":
- -> looks problematic, libxml has no support for anything like this,
- and unless adding a new node type :-( or tweaking text node and
- output routines this is gonna be messy ... must be handled at libxml
- level.
- => Done with a trick, text node name is different, requires > 2.2.11
-
- Pattern scanner:
- -> compute priority
- -> handle unions
- -> support for mode
- => done
-
- Pattern tester:
- -> also put fast lookup for "text()", "comment()", "node()"
- based patterns lists.
- => done
-
- Support Attribute value templates:
- -> namespace support for attribute value templates is not done, need
- a small API redesign
-
- Doc:
- - put a page at http://xmlsoft.org/XSLT/
- - generate/transform the DocBook to HTML
- - add HTML to package
- - manpage and doc for xsltproc
-
-
- Error handling:
- -> check the version stuff, design a separate module for error interfacing
- and default handling, parsing vs. runtime, fatal / compat / warning,
- and lack of optionnal features.
- -> reports context
-
- ID and Key support:
- -> done but namespace support in keys is not defined
- -> make sure keys are recomputed on new document input
-
- Profiler:
- -> added looks good enough
- -> autocorrection of initial calibration loop
-